package com.lixiang.userinfo.dao;

import java.util.HashMap;
import java.util.List;

import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;

import com.lixiang.userinfo.entity.User;
/**
 * 客户信息dao层
 * @author 李湘
 * @date 2018-10-19
 */
@Mapper     //声明是一个Mapper,与springbootApplication中的@MapperScan二选一写上即可
@Repository
public interface UserMapper {
    int deleteByPrimaryKey(Integer userId);

    int insert(User record);

    /**
     * 录入客户信息
     * @param record 客户对象
     * @return 影响行数
     */
    int insertSelective(User record);
    
    /**
     * 删除客户信息 将状态置为2 禁用
     * @param userId
     * @return 影响行数
     */
    int delete(Integer userId);
    
    User selectByPrimaryKey(Integer userId);

    /**
     * 查询客户信息（带条件）
     * @param map
     * @return
     */
    List<User> selectAll(HashMap<String,Object> map);
    
    /**
     * 按周查询客户信息
     * @return 客户信息对象集合
     */
    List<User> selectWeek();
    
    /**
     * 按月查询客户信息
     * @return 客户信息对象集合
     */
    List<User> selectMonth();
    
    /**
     * 按年查询客户信息
     * @return 客户信息对象集合
     */
    List<User> selectYear();
    
    /**
     * 指定日期查询客户信息
     * @param userLastlogtime 指定日期
     * @return 客户信息对象集合
     */
    List<User> selectLogtime(String userLastlogtime);
    
    /**
     * 更新编辑客户信息
     * @param record
     * @return
     */
    int updateByPrimaryKeySelective(User record);

    int updateByPrimaryKey(User record);
}